package com.xinqi.modules.chat.favorite.domain;

import com.baomidou.mybatisplus.annotation.*;
import lombok.Getter;
import lombok.Setter;
import com.xinqi.common.mybatis.data.entity.BaseEntity;

import java.math.BigDecimal;
import java.time.LocalDateTime;

/**
 * 收藏内容表实体层
 *
 * @author: yyzhen
 * @date: 2023/03/23
 */
@Setter
@Getter
@TableName("fa_favorite_content")
public class FavoriteContentEntity extends BaseEntity {
    /**
     * 用户id
     */
    @TableField(value = "user_id")
    private Long userId;
    /**
     * 类型id
     */
    @TableField(value = "type_id")
    private Integer typeId;
    /**
     * 来源类型 (1互动课件 2资料 3作业 4测评 5讨论 6互动视频 8公告 11聊天)
     */
    @TableField(value = "source_type")
    private Integer sourceType;
    /**
     * 来源ID (聊天：消息ID  课程内容：课程ID)
     */
    @TableField(value = "source_id")
    private String sourceId;
    /**
     * 来源 用户Id
     */
    @TableField(value = "from_uid")
    private Long fromUid;
    /**
     * 内容
     */
    @TableField(value = "content")
    private String content;
    /**
     * 文件路径
     */
    @TableField(value = "file_url")
    private String fileUrl;
    /**
     * 视频封面图
     */
    @TableField(value = "video_cover_image")
    private String videoCoverImage;
    /**
     * 文件后缀名称
     */
    @TableField(value = "file_ext")
    private String fileExt;
    /**
     * 文件大小
     */
    @TableField(value = "size")
    private Long size;
    /**
     * 时长
     */
    @TableField(value = "duration")
    private BigDecimal duration;
    /**
     * 标签
     */
    @TableField(value = "tag_id")
    private Long tagId;

    /**
     * 标签集合
     */
    @TableField(value = "tag_ids")
    private String tagIds;

    /**
     * 最近查看
     */
    @TableField(value = "recent_view_time")
    private LocalDateTime recentViewTime;
}
